package com.xc.util;

import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;

import java.util.List;

public class JSONCopy {
    /**
     * 将集合复制到另一个集合
     *
     * @param oldList 原来的集合
     * @param eClass  新的集合的类
     * @param <T>     原集合的类
     * @param <E>     新集合的类
     * @return 返回新的集合
     */
    public static <T, E> List<E> copy(List<T> oldList, Class<E> eClass) {
        String old = JSON.toJSONString(oldList);
        return JSON.parseArray(old, eClass);
    }

    public static <T, E> E copy(T oldObj, Class<E> eClass) {
        String old = JSON.toJSONString(oldObj);
        return JSON.parseObject(old, eClass);
    }

    /**
     * 根据json字符串，和对应的key，取得里面的值
     * @param obj
     * @param key
     * @return
     */
    public static String getKey(String obj, String key) {
        JSONObject jsonObject = JSONObject.parseObject(obj);
        return jsonObject.get(key) + "";
    }
}
